package com.agenda.daoHibernate;

import java.util.List;

import org.hibernate.Session;

import util.HibernateUtil;

import com.agenda.dao.PerfilAgendaDao;
import com.agenda.entity.Perfil;
import com.agenda.entity.PerfilAgenda;

public class PerfilAgendaDaoHibernate implements PerfilAgendaDao {

	private Session sessao;
	

	public void save(Perfil perfilAgenda) {
		if((perfilAgenda.getIdPerfil() == null) || (perfilAgenda.getIdPerfil() == 0)) {
			this.sessao = HibernateUtil.getSession().getCurrentSession();
			this.sessao.save(perfilAgenda);
		} else {
			this.sessao = HibernateUtil.getSession().getCurrentSession();
			this.sessao.update(perfilAgenda);
			this.sessao.flush();
			this.sessao.refresh(perfilAgenda);
		}
		
	}

	public Session getSessao() {
		return sessao;
	}

	public void setSessao(Session sessao) {
		this.sessao = sessao;
	}

	public List<PerfilAgenda> list() {
		try {
			this.sessao = HibernateUtil.getSession().getCurrentSession();
			List<PerfilAgenda> lista = this.sessao.createCriteria(PerfilAgenda.class).list();			
			return lista;
		} catch (Exception e) {
			System.out.println("Erro no DaoHibernate: " + e);
			return null;
		}

		
	}

	
}
